const add = (function () {
  const args = [];
  return function () {
    if (arguments.length === 0) {
      return args.reduce((s, v) => s + v, 0);
    }
    [].push.apply(args, arguments);
  };
}());

add(1, 2, 3, 4);
// add(1)(2)(3);
console.log(add());
